package com.server.rule.component;



import java.util.List;

import org.jdom.Element;

import com.server.rule.data.Data;

import com.server.rule.data.ExceptionTypeData;
/**
 * Classe correspondant à une feuille de l'arbre (doit correspondre à un arret dans le parcours récursif du système)
 * @author queyroi
 *
 */
public class RuleDecision extends RuleComponent{

	
	
	public RuleDecision() {
		label="Aucune Decision Correspondante";
	}
	
	public RuleDecision(String label) {
		this.label = label;
	}
	
	@Override
	public void operate(Data data,DecisionHandler handler) throws ExceptionTypeData{
		handler.addDecision(this);	
	}
	
	@Override
	public boolean hasDecision() {
		return true;
	}
	
		
	@Override
	public Element getXMLElement() {
		Element xmlElement = new Element("Rule");
		xmlElement.setAttribute("type", "Decision");
		xmlElement.setAttribute("label", label);
		return xmlElement;
	}

	@Override
	public void generateFromXML(Element xmlElement) {
		label = xmlElement.getAttributeValue("label");		
	}

	@Override
	public void getUsedVar(List<String> listeUsedVar) {}
	
	

	

	
	

}
